Computing technology has advanced at a remarkable pace, with each subsequent generation of computing system increasing in performance, functionality, and storage capacity, often at reduced cost. In addition, power management in data centers has become increasingly important in recent years, as evidenced by the emergence of Energy Star compliance and the concept of ‘green’ computer systems and data centers. Power costs and environmental concerns are important issues in particular for businesses with large data centers. Thus, computer and software manufacturers that build energy efficient systems and solutions may have a distinct advantage in the marketplace.
Power management techniques often involve monitoring workloads and environmental factors and moving workloads between compute resources within a system or pool of systems in such a fashion as to achieve some advantage related to power consumption. This advantage may be gained through powering down (either putting into low power state or shutting completely off) a system or component within a system, or through avoiding hot spots in the data center, or through avoiding high power cost areas or times. The workloads that are shifted are typically either dispatch units when moving workload between processor cores to facilitate processor and memory folding, or applications/jobs when moving workload between systems in a data center.
Many data centers employ logical partitioning, which enables a computer be utilized to run several operating environments, or operating systems, at once. In a typical embodiment, a single logically-partitioned computer or data processing system can run a plurality of operating systems in a corresponding plurality of logical partitions (LPARs), also referred to as virtual machines (VMs). Each operating system resides in its own logical partition, with each logical partition allocated a part of a physical processor, an entire physical processor, or multiple physical processors from the computer. Additionally, a portion of the computer's memory is allocated to each logical partition. An underlying partition manager, often referred to as a hypervisor or virtual machine monitor (VMM), manages and controls the logical partitions. The hypervisor is typically a part of the system firmware and manages the allocation of resources to the operating systems and logical partitions. As such, one logically-partitioned computer may run one or more logical partitions and thus virtualize the underlying hardware resources used by the applications, operating systems, and other program code configured to operate in those logical partitions.
In a large data center, sufficient processing capacity generally exists to enable logical partitions to be placed in such a manner that the overall workload of the data center is located on only a subset of the available hardware resources in the data center, thereby enabling some of the hardware resources to be powered down to reduce overall power consumption. Given the dynamic nature of many workloads, however, the optimal allocation of logical partitions to various hardware resources in a data center may change over time, and in some cases may require administrator action to address sub-optimal logical partition allocations. In some cases, a sub-optimal allocation may not even be readily apparent, resulting in excessive power consumption in the data center and/or reduced performance.